Truncation and level adjustment of rake output symbols

ABSTRACT

A method of receiving radio signals in a receiver for a digital wireless communications system comprises the steps of level adjusting a received radio signal by an automatic gain control ( 12 ); and despreading the signal in a RAKE unit ( 14 ) having a number of fingers. The despread data symbols are truncated to symbols represented by a smaller number of bits than that of the despread data symbols by selecting the least significant bits of the despread data symbols. The truncated data symbols are saturated; and the despread data symbols are level adjusted in dependence of said despread data symbols, so that overflow for the truncated data symbols is prevented. In this way the number of bits used to represent the despread data symbols that are output from the fingers of the RAKE can be reduced in such a way that the loss of soft information is minimized.

TECHNICAL FIELD OF THE INVENTION

The invention relates to a method of receiving radio signals in areceiver for a digital wireless communications system, the methodcomprising the steps of level adjusting a received radio signal by anautomatic gain control; and despreading the level adjusted signal in aRAKE unit having a number of fingers, thus providing a number ofdespread data symbols, each despread data symbol being represented by afirst number of bits. The invention also relates to a receiver forreceiving radio signals in a digital wireless communications system.

DESCRIPTION OF RELATED ART

In wireless communications systems the physical channel between atransmitter and a receiver is typically formed by a radio link. As anexample, the transmitter could be a base station, and the receiver couldbe a mobile station, or vice versa. In most cases the transmit antennais not narrowly focused towards the receiver. This means that thetransmitted signals may propagate over multiple paths. In addition to apossible direct path from the transmitter to the receiver, many otherpropagation paths caused by reflections from objects in the surroundingsexist. Thus, the receiver may receive multiple instances of the samesignal at different times, i.e. with different delays, because differentportions of the signal are reflected from various objects, such asbuildings, moving vehicles or landscape details.

These different portions of the signal are a cause of interference inthe receiver. Depending on the time resolution of the transmissionsystem and the instantaneous phase relationship, portions with similarpropagation distances combine at the receiver and form a distinctmultipath component. The effect of the combining depends on theinstantaneous relationship of the carrier wavelength and distancedifferences, and it may thus for a given multipath component be eitherenhancing or destructive. In case of destructive interference, thecombining leads to significant decrease of the magnitude, or fading, ofthe path gain for that path.

This interference is treated differently in different transmissionsystems. Many transmission systems try to reduce the effect of multipathpropagation and fading by using receivers that combine the data symbolenergy from all multipath components. In Code Division Multiple Access(CDMA) and Wideband Code Division Multiple Access (WCDMA) systems theenergy of the different received portions of the signal may be utilizedin the receiver by using a so-called RAKE receiver.

In these systems spreading and despreading is used. Data are transmittedfrom the transmitter side using a spread spectrum modulation techniquewherein the data are scattered across a wide range of frequencies. Eachchannel is assigned a unique spreading code that is used to spread thedata across the frequency range. The spreading code is a pseudo-randomnoise (PN) code and is composed of e.g. a binary sequence of 1's and0's, called “chips”, that are distributed in a pseudo-random manner andhave noise-like properties. The number of chips used to spread one databit, i.e. chips/bit, may vary, and it depends, at least in part, on thedata rate of the channel and the chip rate of the system.

In the receiver the received signal is despread and demodulated with thesame spreading code using the same chip rate to recover the transmitteddata, Furthermore, the timing of the demodulation must be synchronized,i.e. the despreading code must be applied to the received signal at thecorrect instant in time, which can be difficult due to the multipatheffects mentioned above. The performance of a CDMA receiver is improvedby utilizing the signal energy carried by many multipath components. Asmentioned, this is achieved by using a RAKE receiver, where eachmultipath component is assigned a despreader whose reference copy of thespreading code is delayed equally to the path delay of the correspondingmultipath component. Thus, in each finger of the RAKE receiver thereceived chip sequence is despread (correlated) with the correspondinglydelayed spreading code. The despread output symbols from each RAKEfinger are then coherently combined to produce a symbol estimate.

Typically, in such a receiver system the radio signal is firstdown-converted to base band by a radio interface. Then the analogdown-converted signal is scaled by an automatic gain control (AGC),before being quantized by an analog-to-digital (A/D) converter. It isnoted that the analog signal is complex and thus consists of an I partand a Q part. Once the received signal has been quantized it is despreadin the RAKE. As mentioned, a radio signal can have travelled throughdifferent paths before arriving at the receiver, which causes the signalto be received at different time delays. Given the time of arrival ofeach path, the received quantized signal is despread in the RAKE foreach path by multiplying the quantized signal, sampled at chip rate,with its corresponding channelization code and scrambling code and sumover the length of the channelization code. The radio channel estimatesare then calculated and their conjugates are multiplied with thedespread data symbols. The products are then summed over the number ofpaths. Finally, the bit stream is decoded.

The scaling of the signal from the AGC may be performed so that theaverage power of the sum of the I and Q parts is kept as close aspossible to a given reference value. The measured power, i.e. thefeedback to the AGC, can be taken before or after the A/D converter.Usually, some kind of control algorithm is involved in finding theoptimal scale factor for the AGC. It is assumed that such an algorithmis given.

One example of such a receiver system is known from WO 00/69086, whichshows a WCDMA receiver with a RAKE circuit. Here the signal level isfirst adjusted with a relatively coarse gain control at thedown-converted and quantized complex chip stream. A refined gain controlis then subsequently performed by means of AGC circuits at theindividual despread data symbols that are output from the fingers of theRAKE. However, this two-step level adjustment will often be too slow tofollow rapid changes in the received signal.

To minimize the size and complexity of such receivers, it would beadvantageous to be able to reduce the number of bits used to representthe despread data symbols that are output from the fingers of the RAKE,because due to the considerable number of possible fingers a high buffercapacity must be reserved for this purpose. However, the loss of softimportant information, e.g. phase information, normally associated withsuch a reduction will typically not be acceptable, because of theresulting deteriorated receiver performance.

Therefore, it is an object of the invention to provide a method ofreceiving radio signals in which the number of bits used to representthe despread data symbols that are output from the fingers of the RAKEcan be reduced in such a way that the loss of soft information isminimized.

SUMMARY

According to the invention the object is achieved in that the methodfurther comprises the step of truncating the despread data symbolsprovided from the RAKE unit to obtain truncated data symbols representedby a second number of bits, said second number being smaller than saidfirst number, wherein the second number of bits are selected as theleast significant bits of the first number of bits representing adespread data symbol; saturating the truncated data symbols to obtainsaturated data symbols by replacing a truncated data symbol with thehighest value that can be represented by the second number of bits, ifthe value of the despread data symbol from which that truncated datasymbol was obtained is larger than said highest value, and replacing atruncated data symbol with the lowest value that can be represented bythe second number of bits, if the value of the despread data symbol fromwhich that truncated data symbol was obtained is less than said lowestvalue; and level adjusting the despread data symbols provided from theRAKE unit in dependence of said despread data symbols, so that overflowfor the truncated data symbols is prevented.

The use of truncation and saturation reduces the number of bits neededto represent the data symbols from the fingers of the RAKE, but sincethe level adjustment is performed before the RAKE unit and the outputlevels from the individual fingers may differ considerably from eachother, there would, with the use of truncation and saturation alone,still be a risk of overflow for one or more of the data symbolsresulting in loss of information in the truncation and saturationprocess. This problem is solved when the truncation and saturation iscombined with a further level adjustment, so that the level of thesymbols provided from the RAKE is adjusted in dependence of the level ofthe saturated data symbols to prevent overflow.

It is noted that although the buffer capacity needed for storing andprocessing the despread data symbols provided from the RAKE unit couldalso be reduced by truncating and saturating the quantized signal beforeit is fed to the RAKE unit, or simply by using an A/D converter with alower number of output bits, such a solution would be less attractive,because if the signal is then reduced to a level, where the signals fromthe stronger paths do not saturate, information from the weaker pathsmight be lost. The signal from very weak paths might even be cancelledso that the corresponding fingers of the RAKE unit would only producenoise, the resulting receiver performance being further deteriorated.Therefore, in order to ensure that the information of the weaker pathsis also utilized, it is preferred to maintain a high number of bits torepresent the input signals to the RAKE unit.

In an expedient embodiment the step of level adjusting the despread datasymbols provided from the RAKE unit comprises the step of measuring thelevel of the despread data symbols. Alternatively, the step of leveladjusting the despread data symbols provided from the RAKE unitcomprises the step of measuring the level of the saturated data symbols.

The level adjusting of the despread data symbols may be performed byadjusting a reference value of said automatic gain control.Alternatively, the level adjusting of the despread data symbols may beperformed by adjusting the level of each despread data symbolindividually in dependence of that despread data symbol.

Expediently, the level adjusting may be based on the largest of aninphase component and a quadrature component of said despread datasymbols.

When the level adjusting is based on data symbols averaged over time, itis ensured that rapid noise fluctuations do not change the adjustmentlevel.

Expediently, the level adjusting is performed by using aProportional-Integral control algorithm.

A simple embodiment is obtained when the level adjusting is performed byselecting one of two different adjustment levels.

As mentioned, the invention also relates to a receiver for receivingradio signals in a digital wireless communications system, the receiverhaving means for level adjusting a received radio signal by an automaticgain control; and despreading the level adjusted signal in a RAKE unithaving a number of fingers, thus providing a number of despread datasymbols, each despread data symbol being represented by a first numberof bits.

When the receiver further comprises means for truncating the despreaddata symbols provided from the RAKE unit to obtain truncated datasymbols represented by a second number of bits, said second number beingsmaller than said first number, wherein the second number of bits areselected as the least significant bits of the first number of bitsrepresenting a despread data symbol; saturating the truncated datasymbols to obtain saturated data symbols by replacing a truncated datasymbol with the highest value that can be represented by the secondnumber of bits, if the value of the despread data symbol from which thattruncated data symbol was obtained is larger than said highest value,and replacing a truncated data symbol with the lowest value that can berepresented by the second number of bits, if the value of the despreaddata symbol from which that truncated data symbol was obtained is lessthan said lowest value; and level adjusting the despread data symbolsprovided from the RAKE unit in dependence of said despread data symbols,so that overflow for the truncated data symbols is prevented, a receiveris achieved in which the number of bits used to represent the despreaddata symbols that are output from the fingers of the RAKE can be reducedin such a way that the loss of soft information is minimized.

In an expedient embodiment the receiver is adapted to adjust the levelof the despread data symbols provided from the RAKE unit by means ofmeasuring the level of the despread data symbols. Alternatively, thereceiver is adapted to adjust the level of the despread data symbolsprovided from the RAKE unit by means of measuring the level of thesaturated data symbols.

The receiver may be adapted to adjust the level of the despread datasymbols by adjusting a reference value of said automatic gain control.Alternatively, the receiver may be adapted to adjust the level of thedespread data symbols by adjusting the level of each despread datasymbol individually in dependence of that despread data symbol.

Expediently, the receiver may be adapted to base said level adjusting onthe largest of an inphase component and a quadrature component of saiddespread data symbols.

When the receiver is adapted to base said level adjusting on datasymbols averaged over time, it is ensured that rapid noise fluctuationsdo not change the adjustment level.

Expediently, the receiver is adapted to perform said level adjusting byusing a Proportional-Integral control algorithm.

A simple embodiment is obtained when the receiver is adapted to performsaid level adjusting by selecting one of two different adjustmentlevels.

Expediently, the receiver may be a WCDMA receiver.

The invention also relates to a computer program and a computer readablemedium with program code means for performing the method describedabove.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be described more fully below with reference tothe drawings, in which

FIG. 1 shows an example of multiple paths between a base station and amobile station,

FIG. 2 shows a power delay profile for the paths illustrated in FIG. 1,

FIG. 3 shows a known receiver structure,

FIG. 4 shows the receiver of FIG. 3 modified with a truncation andsaturation unit,

FIG. 5 illustrates a situation with saturation of one of the I and Qcomponents of a truncated data symbol,

FIG. 6 illustrates a situation with saturation of both the I and Qcomponents of a truncated data symbol,

FIG. 7 shows a receiver structure in which the AGC unit is adjusted independence of the truncated and saturated data symbols,

FIG. 8 shows a flow chart of a part of the structure of FIG. 7,

FIG. 9 shows a receiver structure in which the AGC unit is adjusted independence of the despread data symbols, and

FIG. 10 shows a receiver structure in which the despread data symbolsare adjusted in dependence of the truncated and saturated data symbols.

DETAILED DESCRIPTION OF EMBODIMENTS

FIG. 1 shows a situation in which a base station 1 and a mobile station2 of a wireless communications system communicate with each other. As anexample, a signal transmitted from the base station 1 is received by themobile station 2. However, the transmitted signal travels along multiplepaths from the base station to the mobile station. In this case there isa direct and unobstructed propagation path 3, but in addition to thisdirect path, reflections from objects in the surroundings cause a numberof indirect paths to exist. Two such paths are shown in the figure. Oneindirect path 4 is reflected from a house 5, while another path 6 iscaused by reflection from another building 7.

Since the part of a signal transmitted via one of the indirect paths 4and 6 has to travel a longer distance to arrive at the mobile station 2,compared to the part of the signal travelling via the direct path 3,multiple instances of the same signal will be received by the mobilestation 2 at different times, i.e. with different delays.

Thus, if a pilot signal is transmitted from the base station 1, thepower P received at the mobile station 2 as a function of the time t maylook as illustrated in FIG. 2, which shows an example of a power delayprofile. The power delay profile shows all signals received at themobile station, including noise and interference signals. However, onlythe peaks in the power delay profile correspond to the multipathcomponents of the transmitted signal. Together these peaks form theimpulse response of the channel. In FIG. 2 the peak P_(a) received atthe time t_(a) corresponds to the direct path 3 in FIG. 1, while thepeaks P_(b) and P_(c) received at the times t_(b) and t_(c),respectively, correspond to the indirect paths 4 and 6 in FIG. 1. Thus,as an example, it is seen that the delay of the path 6 (corresponding tothe peak P_(c)) is larger than the delay of the path 3 (corresponding tothe peak P_(a)).

The mobile station 2 and the base station 1 may be adapted for use ine.g. a Code Division Multiple Access (CDMA) system or a Wideband CodeDivision Multiple Access (WCDMA) system, and in that case the mobilestation 2 may use a RAKE receiver, which is capable of identifying andtracking the various multipath signals for a given channel. In this waythe energy or power of several multipath components can be utilized inthe receiver. As mentioned above, this may be achieved by using a RAKEreceiver, where each multipath component is assigned a despreader whosereference copy of the spreading code is delayed equally to the pathdelay of the corresponding multipath component. The outputs of thedespreaders, i.e. the fingers of the RAKE receiver, are then coherentlycombined to produce a symbol estimate.

Although reference is here made to a RAKE receiver in a mobile station,it should be noted that the algorithms described below may be used atany CDMA receiver, i.e. in a mobile station or a base station, and thetransmission may be uplink or downlink.

FIG. 3 illustrates an example of a typical receiver structure for a RAKEreceiver. The radio signal is first down-converted to base band by aradio interface 11. Then the analog down-converted signal is scaled byan automatic gain control (AGC) unit 12, before being quantized by ananalog to digital (A/D) converter 13. It is noted that the analog signalis complex and thus consists of an I part and a Q part.

Once the received signal has been quantized it is despread in a RAKEunit 14. As mentioned, a radio signal can have travelled throughdifferent paths before arriving at the receiver, which causes the signalto be received at different time delays. In the RAKE unit 14, eachreported delay estimate (path) is assigned a RAKE finger, and thereceived quantized signal is despread for each path by multiplying thequantized signal, sampled at chip rate, with its correspondingchannelization code and scrambling code and sum over the length of thechannelization code. Each RAKE finger presents a complex despread datasymbol with the values g_(I) and g_(Q) ₁ each represented by N_(g) bits.

In the combining unit 15, the radio channel estimates are thencalculated and their conjugates are multiplied by the despread datasymbols. The products for each RAKE finger are then summed over thenumber of paths. Finally, the bit stream is decoded in the decoder 16.

The scaling of the signal in the AGC unit 12 may be performed so thatthe average power of the sum of the I and Q parts is kept as close aspossible to a given reference value. The measured power, i.e. thefeedback to the AGC, can be taken before or after the A/D converter 13.The optimal scale factor for the AGC is found by means of a controlalgorithm, of which several algorithms are well known.

Due to the considerable number of possible fingers, a high buffercapacity is needed to store and process the despread data symbols thatare output from the fingers of the RAKE unit 14. The high buffercapacity requires a larger silicon area and thus a larger size and ahigher complexity of the receiver. Therefore, it would be advantageousto be able to reduce the number of bits used to represent each despreaddata symbol. This can be obtained by truncating and saturating thedespread data symbols, as illustrated in FIG. 4, in which a truncationand saturation unit 21 is inserted between the RAKE unit 14 and thecombining unit 15. The truncated and saturated values t_(I) and t_(Q)are computed from the values g_(I) and g_(Q) by extracting the N_(t)least significant bits, if this still equals g_(I) or g_(Q). Otherwise,there is overflow, and t_(I) or t_(Q) is set to the maximum or minimumvalue that can be represented by N_(t) bits, depending on the sign ofg_(I) or g_(Q). The function of the truncation and saturation unit 21can be defined as $y = {{{sat}(x)} = \left\{ \begin{matrix}{M_{y},} & {{x \geq M_{y}},} \\{x,} & {{m_{y} < x < M_{y}},} \\{m_{y},} & {{x \leq m_{y}},}\end{matrix} \right.}$where x is a number represented by an integer number of bits N_(x).M_(x) and m_(x) are defined to be the maximum and minimum achievablenumber using the bit representation of x. Correspondingly, y can berepresented with N_(y) integer bits, where N_(y) is less than N_(x), andM_(y) and m_(y) are defined to be the maximum and minimum achievablenumber using the bit representation of y.

By saturating the signals t_(I) or t_(Q) in the truncation andsaturation unit 21, the problem of overflow is partly solved. However,there is a risk of loosing valuable phase information between g_(I) org_(Q). FIG. 5 illustrates a situation where only one of t_(I) or t_(Q),in this case t_(Q), saturates. A dotted box shows the maximum values oft_(I) or t_(Q). In the figure the coordinate (g_(I), g_(Q)) fall outsidethe box and will thus be truncated. The result of the truncation andsaturation is shown as the coordinate (t_(I), t_(Q)). It is immediatelyseen that the truncation and saturation introduces a phase error. Thephase of the complex data symbol is changed from α_(g) to α_(t). If botht_(I) and t_(Q) saturates, even more phase information is loosed, sinceonly four different phases are possible, which is illustrated in FIG. 6.Again the dotted box shows the maximum values of t_(I) or t_(Q). In thefigure both g_(I) and g_(Q) fall outside the box and will thus betruncated. The result of the truncation and saturation is shown as thecoordinate (t_(I), t_(Q)), which will be located at one of the cornersof the box. It is immediately seen that the truncation and saturationintroduces a phase error. In both cases, valuable soft information isloosed, which results in a deteriorated performance.

Therefore, the truncation and saturation is combined with an adjustmentof the level of the RAKE outputs, i.e. the despread data symbols, withan adaptive factor depending on the level of the individual despreaddata symbols outputs. This can be done in a number of different ways,which will be described below.

One solution is illustrated in FIG. 7. Here the reference value for theAGC unit 12 is adjusted in dependence of the truncated and saturatedvalues t_(I) and t_(Q). The reference value or factor is calculated inthe factor computing unit 22, which will be described in further detailbelow.

A flow chart of the factor computing unit 22 is shown in FIG. 8. In step31 data are taken from the truncation and saturation unit 21, andmeasurement quantities are computed for all involved physical channelsor paths. The values t_(I) ^((CH)) and t_(Q) ^((CH)) for each physicalpath or channel CH are sampled according to a predetermined pattern. Agiven number of physical channels can be studied in parallel. In orderto check if either the I or Q part has saturated, the measurementquantity Ω^((CH)) = max   (t_(I)^((CH)), t_(Q)^((CH)))is computed for each physical channel, where |x| means the absolutevalue of x.

In step 32 the computed measurement quantities are processed. Anexpectation value of Ω^((CH)) is computed. This can, for example, bedone by filteringΩ_(n+1) ^((CH))=(1−α)Ω_(n) ^((CH))+αΩ^((CH)).

Here, the time constant for α, i.e. the time it takes to compute thecorresponding moving average, should be much larger than the timeconstant for the AGC loop. Furthermore, the time constant for α shouldbe large enough to filter over a number of fading peaks and dips.

In step 33 a new reference value for the AGC circuit 12 is computed. IfΩ_(ref) ^((CH)) is the reference value for Ω_(n) ^((CH)), a newreference power value P_(ref) ^((CH)) for the AGC unit is computed usinga Proportional-integral controller (PI controller), in which an errorsignal is integrated and used for eliminating steady state or offseterrors, i.e. the following is calculated${e_{n}^{({CH})} = {\Omega_{ref}^{({CH})} - \Omega_{n}^{({CH})}}},{I_{n + 1}^{({CH})} = {I_{n}^{({CH})} + {\frac{1}{T_{i}}{e_{n}^{({CH})}.}}}}$

Here I_(n) ^((CH)) is stored from the last activation of the block, andT_(i) is an integration constant. The new reference power for the AGCfor channel CH is taken asP _(ref) ^((CH)) =K(e _(n) ^((CH)) +I _(n) ^((CH)))for some constant K.

As shown in FIG. 7 there is only one AGC, and thus the final referencevalue is set as$P_{ref} = {\min\limits_{CH}\quad{\left( P_{ref}^{({CH})} \right).}}$It is noted that more general controllers can be used in this algorithm,but for ease of presentation the simple PI controller has been chosen.

The algorithm of step 33 mentioned above may also be simplified as willnow be described. It is assumed that two reference power levels, P₁ andP₂, are used. The following steps are then performed: if Ω_(n) ^((CH))>M_(t) ₁ (1 − γ₁) P_(ref) ^((CH)) = P₁ elseif Ω_(n) ^((CH)) <M_(t) ₁ (1− γ₂) P_(ref) ^((CH)) = P₂ end

Here, M_(t) ₁ denotes the maximum value represented by t₁, which is thesame for t_(Q). This algorithm toggles between two states. Here, γ₁<γ₂and P₁<P₂. Having γ₁<γ₂ introduces a viscosity to the system, whichprevents the system from toggling between the two reference values P₁and P₂ from one activation of the block to the other. In this algorithm,it is straight forward to generalize to include more than two powerreference value levels.

Instead of using the values t_(I) ^((CH)) and t_(Q) ^((CH)) for eachphysical path or channel CH in step 31 as described above and shown inFIG. 7, the values g_(I) ^((CH)) and g_(Q) ^((CH)) may be used, becausethey also contain the necessary information. This is illustrated in FIG.9.

In an alternative embodiment, the individual despread data symbol withthe values g_(I) and g_(Q) may be scaled with an adaptive factor beforetruncation and saturation in the unit 21, instead of adjusting the AGCcontrol as described above. This is illustrated in FIG. 10, whichcorresponds to FIG. 7, but instead of the factor computing unit 22connected to the AGC unit 12 this embodiment has a factor computing unit42 connected to the truncation and saturation unit 21. The flow chart ofFIG. 8 is also valid for the factor computing unit 42, but the algorithmused in step 33 is different. An example of an algorithm that can beused here is described below.

If Ω_(ref) ^((CH)) is the reference value for Ω_(n) ^((CH)), the newreference scale value for the truncation and saturation unit 21, S_(ref)^((CH)), can be computed using a PI controller, i.e.${e_{n}^{({CH})} = {\Omega_{ref}^{({CH})} - \Omega_{n}^{({CH})}}},{I_{n + 1}^{({CH})} = {I_{n}^{({CH})} + {\frac{1}{T_{i}}e_{n}^{({CH})}}}}$

Here I_(n) ^((CH)) is stored from the last activation of the truncationand saturation unit 21, and T_(i) is an integration constant. The newreference scale value for channel CH can then be taken asS _(ref) ^((CH)) =K(e _(n) ^((CH )) +I _(n) ^((CH)))for some constant K.

The truncation and saturation in unit 21 is then done as follows,t _(I) ^((CH)) =sat(floor(g _(I) ^((CH)) ·S _(ref) ^((CH))))t _(Q) ^((CH)) =sat(floor(g _(Q) ^((CH)) ·S _(ref) ^((CH))))where the integer part of the number x is represented as floor(x).

Again in this algorithm more general controllers can be used, but forease of presentation the simple PI controller is chosen.

Also here the algorithm can be used in a simplified version. If it isassumed that there are two reference scale levels, S₁ and S₂ thefollowing steps may then be performed if Ω_(n) ^((CH)) >M_(t) ₁ (1 − γ₁)S_(ref) ^((CH)) = S₁ elseif Ω_(n) ^((CH)) <M_(t) ₁ (1 − γ₂) S_(ref)^((CH)) = S₂ end

Here, M_(t) ₁ denotes the maximum value represented by t_(I), which isthe same for t_(Q). This algorithm toggles between two states. Here,γ₁<γ₂ and P₁<P₂. Having γ₁<γ₂ introduces a viscosity to the system,which prevents the system from toggling between the two reference valuesP₁ and P₂ from one activation of the unit to the other.

The truncation and saturation in unit 21 is then done as follows,t _(I) ^((CH)) =sat(floor(g _(I) ^((CH)) ·S _(ref) ^((CH)))t _(Q) ^((CH)) =sat(floor(g _(Q) ^((CH)) ·S _(ref) ^((CH)))

It is straight forward to generalize this algorithm to include more thantwo power reference value levels.

Also here the values g_(I) ^((CH)) and g_(Q) ^((CH)) may be used foreach physical path or channel CH in step 31 instead of the values t_(I)^((CH)) and t_(Q) ^((CH)) as described above, because they also containthe necessary information.

It is noted that in the circuits described above, all the gainestimation is performed by the AGC unit 12 on the chip stream, i.e.before the signals are despread in the RAKE unit 14. The leveladjustment performed by the units 22 or 42 can be considered as a safetycheck to prevent any overflow at symbol level, i.e. after thedespreading, by performing a complementary slow gain adjustment based onthe symbol stream.

Although a preferred embodiment of the present invention has beendescribed and shown, the invention is not restricted to it, but may alsobe embodied in other ways within the scope of the subject-matter definedin the following claims.

1. A method of receiving radio signals in a receiver (2) for a digitalwireless communications system, the method comprising the steps of:level adjusting a received radio signal by an automatic gain control(12); and despreading the level adjusted signal in a RAKE unit (14)having a number of fingers, thus providing a number of despread datasymbols, each despread data symbol being represented by a first numberof bits, characterized in that the method further comprises the step oftruncating the despread data symbols provided from the RAKE unit (14) toobtain truncated data symbols represented by a second number of bits,said second number being smaller than said first number, wherein thesecond number of bits are selected as the least significant bits of thefirst number of bits representing a despread data symbol; saturating thetruncated data symbols to obtain saturated data symbols by replacing atruncated data symbol with the highest value that can be represented bythe second number of bits, if the value of the despread data symbol fromwhich that truncated data symbol was obtained is larger than saidhighest value, and replacing a truncated data symbol with the lowestvalue that can be represented by the second number of bits, if the valueof the despread data symbol from which that truncated data symbol wasobtained is less than said lowest value; and level adjusting thedespread data symbols provided from the RAKE unit (14) in dependence ofsaid despread data symbols, so that overflow for the truncated datasymbols is prevented.
 2. A method according to claim 1, characterized inthat said step of level adjusting the despread data symbols providedfrom the RAKE unit (14) comprises the step of measuring the level of thedespread data symbols.
 3. A method according to claim 1, charecterizedin that said step of level adjusting the despread data symbols providedfrom the RAKE unit (14) comprises the step of measuring the level of thesaturated data symbols.
 4. A method according to any one of claims 1 to3, characterized in that said level adjusting of the despread datasymbols is performed by adjusting a reference value of said automaticgain control (12).
 5. A method according to any one of claims 1 to 3,characterized in that said level adjusting of the despread data symbolsis performed by adjusting the level of each despread data symbolindividually in dependence of that despread data symbol.
 6. A methodaccording to any one of claims 1 to 5, characterized in that said leveladjusting is based on the largest of an inphase component and aquadrature component of said despread data symbols.
 7. A methodaccording to any one of claims 1 to 6, characterized in that said leveladjusting is based on data symbols averaged over time.
 8. A methodaccording to any one of claims 1 to 7, characterized in that said leveladjusting is performed by using a Proportional-Integral controlalgorithm.
 9. A method according to any one of claims 1 to 8,characterized in that said level adjusting is performed by selecting oneof two different adjustment levels.
 10. A receiver (2) for receivingradio signals in a digital wireless communications system, the receiverhaving means for: level adjusting a received radio signal by anautomatic gain control (12); and despreading the level adjusted signalin a RAKE unit (14) having a number of fingers, thus providing a numberof despread data symbols, each despread data symbol being represented bya first number of bits, charecterized in that the receiver furthercomprises means for truncating the despread data symbols provided fromthe RAKE unit (14) to obtain truncated data symbols represented by asecond number of bits, said second number being smaller than said firstnumber, wherein the second number of bits are selected as the leastsignificant bits of the first number of bits representing a despreaddata symbol; saturating the truncated data symbols to obtain saturateddata symbols by replacing a truncated data symbol with the highest valuethat can be represented by the second number of bits, if the value ofthe despread data symbol from which that truncated data symbol wasobtained is larger than said highest value, and replacing a truncateddata symbol with the lowest value that can be represented by the secondnumber of bits, if the value of the despread data symbol from which thattruncated data symbol was obtained is less than said lowest value; andlevel adjusting the despread data symbols provided from the RAKE unit(14) in dependence of said despread data symbols, so that overflow forthe truncated data symbols is prevented.
 11. A receiver according toclaim 10, charecterized in that it is adapted to adjust the level of thedespread data symbols provided from the RAKE unit (14) by means ofmeasuring the level of the despread data symbols.
 12. A receiveraccording to claim 10, charecterized in that it is adapted to adjust thelevel of the despread data symbols provided from the RAKE unit (14) bymeans of measuring the level of the saturated data symbols.
 13. Areceiver according to any one of claims 10 to 12, characterized in thatit is adapted to adjust the level of the despread data symbols byadjusting a reference value of said automatic gain control (12).
 14. Areceiver according to any one of claims 10 to 12, characterized in thatit is adapted to adjust the level of the despread data symbols byadjusting the level of each despread data symbol individually independence of that despread data symbol.
 15. A receiver according to anyone of claims 10 to 14, characterized in that it is adapted to base saidlevel adjusting on the largest of an inphase component and a quadraturecomponent of said despread data symbols.
 16. A receiver according to anyone of claims 10 to 15, characterized in that it is adapted to base saidlevel adjusting on data symbols averaged over time.
 17. A receiveraccording to any one of claims 8 to 13, characterized in that it isadapted to perform said level adjusting by using a Proportional-Integralcontrol algorithm.
 18. A receiver according to any one of claims 10 to17, characterized in that it is adapted to perform said level adjustingby selecting one of two different adjustment levels.
 19. A receiveraccording to any one of claims 10 to 18, characterized in that thereceiver is a WCDMA receiver.
 20. A computer program comprising programcode means for performing the steps of any one of the claims 1 to 9 whensaid computer program is run on a computer.
 21. A computer readablemedium having stored thereon program code means for performing themethod of any one of the claims 1 to 9 when said program code means isrun on a computer.